Application processors (APs) are used in various mobile devices, such as smartphones, tablet computers, notebook computers, navigational devices, and the like. An AP may be implemented as a system-on-chip (SoC), which is a single electronic chip in which a complex electronic system includes various circuits, functional blocks, memory, logic, etc.
An SoC may include one or more processors to control the system and various SoC components including intellectual property (IP) blocks controlled by the one or more processors. The IP blocks may include various circuits, logic, or a combination thereof. The circuits and logic may include or be associated with code or at least one instruction. The IP blocks may include a master IP block and a slave IP block. IP blocks are connected together through transaction interfaces that enable data transfer. A time in which a transaction is pending may be a time between an SoC component that sends a request, e.g., the master IP block sending a request, and another SoC component that sends a response, e.g., the slave IP block sending a response.
During the course of operation, an SoC may fall into a deadlock state. For example, during a solution development process, a deadlock within an SoC may occur due to various reasons. The deadlock may include an inoperable state in which SoC components, e.g., IP blocks or other components in the SoC, within an SoC send a request and are unable to receive a response. For instance, a process or thread may enter a waiting state when a requested resource is held by another waiting process that is also waiting for another resource held by another waiting process. If a process is indefinitely unable to change its state, the system may be in a deadlock state. In some deadlock states, a processor, e.g., a host processor configured to execute an operating system (OS), may be in an operable state while an IP block is in a permanent pending state after transmitting a request. In other deadlock states, the processor may be in an inoperable state and all SoC components may be in a deadlock state. In at least some of these cases, it may be more difficult to analyze the cause of a deadlock state because SoC components and the one or more processors are in a deadlock state.
The above information disclosed in this Background section is only for enhancement of understanding of the background of the inventive concept, and, therefore, it may contain information that does not form the prior art that is already known to a person of ordinary skill in the art.